home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C & C++ Multimedia Cyber Classroom
/
C and C++ Multimedia Cyber Classroom (Prentice Hall) (1998).iso
/
src
/
fig07_03.jar
/
Ch07
/
Fig07_03
/
Fig07_03.cpp
next >
Wrap
C/C++ Source or Header
|
1997-10-20
|
963b
|
47 lines
// Fig. 7.3: fig07_03.cpp
// Attempting to initialize a constant of
// a built-in data type with an assignment.
#include <iostream.h>
class Increment {
public:
Increment( int c = 0, int i = 1 );
void addIncrement() { count += increment; }
void print() const;
private:
int count;
const int increment;
};
// Constructor for class Increment
Increment::Increment( int c, int i )
{ // Constant member 'increment' is not initialized
count = c;
increment = i; // ERROR: Cannot modify a const object
}
// Print the data
void Increment::print() const
{
cout << "count = " << count
<< ", increment = " << increment << endl;
}
int main()
{
Increment value( 10, 5 );
cout << "Before incrementing: ";
value.print();
for ( int j = 0; j < 3; j++ ) {
value.addIncrement();
cout << "After increment " << j << ": ";
value.print();
}
return 0;
}